Golang Job: Internship Program

Job added on

Company

Nethermind

Location

London, England - United Kingdom

Job type

Full-Time

Golang Job Details

What are we all about?

We are a team of world class builders and researchers with expertise across several domains: Ethereum Protocol Engineering, Layer-2, Decentralized Finance (DeFi), Miner Extractable Value (MEV), Smart Contract Development, Security Auditing and Formal Verification.

Working to solve some of the most challenging problems in the blockchain space, we frequently collaborate with renowned companies, such as Ethereum Foundation, StarkWare, Gnosis Chain, Aave, Flashbots, xDai, Open Zeppelin, Forta Protocol, Energy Web, POA Network and many more.

We actively contribute to Ethereum core development, EIP's and network upgrades together with the Ethereum Foundation, and other client teams.

Today, there are nearly 200 of us working remotely from over 45+ countries.

You can view all our open positions here: https://jobs.nethermind.io/

How does the internship program work and what makes it unique?

Our interns will be given full autonomy, allowing them to decide whatever they want to do, experiment, and ask a lot of questions, and we will encourage and push our interns to succeed.

This is a new area for me, can I have study time?

We allow our interns the study time they require for anything related to what we do.

What are the working hours?

Our working hours are flexible to suit the requirements of the individual. In order to get the best out of the internship program, interns must be available for a minimum of 20 hours per week.

Where is it located?

We are a globally distributed team and we are a remote-first organization. Our entire team works fully remote.

Is it paid?

Yes, our internship program is paid.

When does it start?

Our internship program is open all year round and you can apply at any time. and we would like to inform you that we are no longer hiring interns this year, however the role is open and we will start interviewing and hiring from January

What is the duration of the internship?

The duration of the internship is flexible and can range from 1-3 months depending on the availability of the individual. Most of our interns stay on the program for 3 months.

Do you hold a daily stand-up meeting?

Yes. Each team holds their own daily stand-up meeting to discuss what each member of the team is working on and an opportunity to ask questions.

Will I have a mentor?

Yes. All interns are assigned a mentor where they can seek help and guidance.

What tool do you use for communication?

We use Slack daily and it is our primary medium of communication. All interns are added to our Slack workspace.

What projects can I work on?

Throughout the duration of the internship, our interns can work on one or more of the following projects depending on the skills, knowledge, and preference of the individual:

Nubia

https://www.cairo-lang.org/

https://ethereum.org/en/developers/docs/layer-2-scaling/

The aim of project Nubia is to deliver an L2-based solutions for DeFi. It leverages Cairo language and the platform provided by StarkWare to make this happen.

Skills that you will use and learn at the Nubia team include but not limited to:

  • Low level programming (assembler skills, C / embedded devices programming), CairoLang
  • Compilers / LLVM / assembly code / runtimes
  • EVM (Ethereum Virtual Machine) compiler
  • Abstract algebra
  • Cryptography
  • ZKP (Zero-Knowledge Proofs)
  • Solidity programming
  • Financial mathematics (Options pricing, Monte Carlo simulations)
Gauss

The Gauss team focuses on security auditing of Smart Contracts. The team supports clients to achieve higher levels of confidence in the security and robustness of their system relying on manual review and different tools to check for possible vulnerabilities in the code and design.Skills that you will use and learn in the Gauss team included but not limited to:
  • Programming skills in Solidity and Cairo;
  • Comprehension of the ecosystems where Smart Contracts interact (Ethereum and StarkNet).
  • Understanding of common attack patterns in the space;
  • Understanding of the most common Blockchain applications;
  • Different tools like Slither, Echidna, Etherscan, and Tenderly;
  • Written and verbal communication skills in the English language;
  • Ability to diagnose bugs in complex Blockchain systems.
To learn more about smart contracts security auditing internship program, please apply and we will get back to you.

Synnax

The Synnax team aims to bring formal verification to any other team at Nethermind that may need it. We leverage the Lean proof assistant to formally verify smart contracts, compilers, etc... Our current focus is on verifying the Warp compiler.

Skills that you will use and learn in the Synnax team include but not limited to:

  • Writing formal specifications in Lean
  • Formally specifying programming languages. (Solidity, Yul, EVM, Cairo, etc...)
  • Formal specifications of distributed systems
  • Cryptography, Zero-Knowledge Proofs and Abstract Algebra
  • Collaborating with both internal and external customers and the teams responsible for the actual implementation
  • Publishing and presenting research results both internally and externally

Links:

  • https://leanprover.github.io/
  • https://github.com/NethermindEth/Yul-Specification
  • https://medium.com/nethermind-eth/securing-warp-a-formal-specification-of-the-yul-ir-85bb3bf51c62
  • https://github.com/NethermindEth/warp

Ethereum 1

https://ethereum.org/en/

https://github.com/NethermindEth/nethermind

Eth1 is the original team of Ethereum protocol engineering at Nethermind. Nethermind is a full Ethereum client implementation written in C# .NET. It runs on all major platforms supporting Ethereum mainnet, Clique, and AuRa chains, as well as xDAI, Energy Web, and private networks. The Nethermind client comes with additional features, such as Prometheus/Grafana dashboards, seq enterprise logging, and complete JSON RPC, including two formats of tracing. Moreover, it offers a variety of advanced built-in plugins notably Baseline and MEV.

Skills that you will use and learn at the Ethereum 1 team include but are not limited to:

Technical perspective

  • .NET 6
  • Distributed networks (P2P)
  • Performance and memory optimizations
  • EVM / TransactionPool / JSON RPC
  • Complex data structures Patricia/Merkle/Verkle tries
  • RocksDB

Broader perspective

  • Work on EIP's with Ethereum Foundation and wider Ethereum community
  • Work on Ethereum extensions
  • Open source development

Sparta

https://en.wikipedia.org/wiki/Decentralized_finance

https://medium.com/flashbots/frontrunning-the-mev-crisis-40629a613752

The Sparta team is focusing on tx pool and DeFi transactions analysis for arbitrage purposes.

Skills that you will use and learn at the MEV ****(Miner Extractable Value) ****team include but not limited to:

  • Ethereum transactional pool
  • Decentralized finance (DeFi)
  • Financial arbitrage
  • Mining pool operations

Angkor

https://en.wikipedia.org/wiki/DevOps

This Angkor team is responsible for processes related to product development operations. Build processes, infrastructure, security, cloud, administration is all within the scope of the Angkor team work.

Skills that you will use and learn at the DevOps team include but not limited to:

  • Deploy and maintain the blockchain infrastructure in a multi-cloud environment (DigitalOcean, AWS, Google Cloud, Linode, others)
  • Build and maintain company-wide CI/CD pipelines for different projects (Github Actions)
  • Write scripts, lambda functions and even full applications with the language of your choice (preferably Bash/Python/Golang) that can help us improve the workflow
  • Bash scripting. Linux knowledge.
  • Ethereum node management
  • Docker and Docker-Compose
  • Monitor the infrastructure with tools like Grafana, Prometheus, Seq, OpsGenie
  • Automate work - yours and others (Terraform, Ansible)
  • Networking skills
  • High scalable systems
  • SecOps and GitOps related practices
  • Orchestration with Kubernetes
Atlantis

Atlantis Is a new team at Nethermind specializing in Metaverse/NFT. You can be at the beginning of an agency and can wear different hats or be responsible for a specific responsibility.Things you will learn to do in the team:
  • Market research
  • NFT smart contracts development
  • Data analysis and building dashboards, metrics of the market
  • 3D development and design
  • Marketing strategies and creative thinking
  • As a developer, you can build metaverse/nft tools
  • Improve teamwork skills, participate in meetings, and have a personal mentor

Oiler

https://gauntlet.network/research/

https://en.wikipedia.org/wiki/Decentralized_finance

https://docs.oiler.network/oiler-network/

Oiler is a project that Nethermind delivers for Oiler Network. It is a DeFi (decentralized finance) solution for blockchain native derivative products.

Skills that you will use and learn at the Oiler team include but not limited to:

  • Solidity programming OR Node.js programming OR React programming
  • Options and other financial instruments
  • Decentralized finance (DeFi)
  • DeFi markets and AMMs
  • Derivatives pricing (Options, Black Scholes, Futures)

Venice (Solidity & Audits)

https://docs.soliditylang.org/en/v0.8.2/

https://en.wikipedia.org/wiki/Decentralized_finance

This team works on programming Ethereum smart contracts and using tools for testing and security audits.

Skills that you will use and learn at the Solidity & Audits team include but not limited to:

  • Solidity, Trufle, Hardhat, Ganache
  • Formal analysis of computer programs
  • Software security
  • MythX
  • Slither, Echidna, Manticore
  • Decentralized Finance

What are the requirements and pre-requisite to apply?

We are looking for students and recent graduates with a strong background in software engineering, computer science, mathematics, financial mathematics, or quantitative finance.

Knowledge in any of the following is nice to have:

  • DeFi
  • AMM (automated market maker)
  • Derivatives pricing (Options, Black Scholes, Futures)
  • Stochastic calculus
  • Algorithms
  • Cryptography
  • Ethereum

But above all, we look for passion and hunger to work in the blockchain, Ethereum and DeFi space.


PhD internships

Synnax
The Synnax team aims to formally verify as much of the Ethereum ecosystem as we can: Solidity smart contracts, Cairo smart contracts, protocols, compilers, etc. We work with both external clients and other teams at Nethermind. We develop and apply formal verification tools and leverage the Lean proof assistant to formally verify smart contracts, compilers, etc.
Skills that you will use and learn in the Synnax team include but not limited to:
  • Publishing and presenting research results both internally and externally
  • Collaborating with both internal and external customers and the teams responsible for the implementations being verified
  • Writing formal specifications in Lean
  • Writing formal verification tools (SMT checkers, Horn solvers, proof assistant libraries, etc)
  • Formally specifying programming languages. (Solidity, Yul, EVM, Cairo, etc)
  • Formal specifications of distributed systems
  • Cryptography, Zero-Knowledge Proofs and Abstract Algebra
Links:
  • https://leanprover.github.io/https://github.com/NethermindEth/Yul-Specification
  • https://medium.com/nethermind-eth/securing-warp-a-formal-specification-of-the-yul-ir-85bb3bf51c62
  • https://github.com/NethermindEth/warp
Nineveh
In the Nineveh research team, we investigate cryptography developments to make Ethereum a better, safer and more private place. Some exemplary projects we are engaged in are:
  • Hybrid proof systems from SNARKs and STARKs. In this project, we combine techniques from SNARKs and STARKs to build hybrid proof systems enjoying the bests of both worlds. SNARKs allow for short (constant-size) proofs and have efficient verifiers, on the other had, they require trusted setup. zkSTARKs are transparent (don't rely on a trusted setup) and have efficient prover while paying the price of longer proof size (logarithmic to the size of the proven statement) and verifier's complexity. We investigate use of STARK-related primitives like FRI to give zkSNARKs more efficient provers and reduce security assumptions used. In the nearest future we plan to implement our hybrid schemes to show the world concrete efficiency gains our approach brings.
  • Secure storage for mnemonic keys. The common problem of using secret keys is that they may be stolen or lost, causing for example, losing access to staked funds. Here, we build an application that allows users to securely distribute the key into so-called shares such that only large enough set of the shares can be used to reconstruct the secret and someone who knows too few secret's shares learns nothing. We achieve that by using Shamir's secret sharing scheme. Importantly both the secret and the shares are represented by easy to remember mnemonic.
  • Security analysis of proof systems. In this project, we analyse security properties of existing zkSNARKs to verify whether they are sufficiently secure for such a complex environments that blockchains are. To that end, we use provable security methods. Additionally, we analyse existing zkSNARKs and name their security gaps. We show where efficiency-oriented efforts make proof systems unusable due to security vulnerabilities.
  • Towards more efficient and secure polynomial commitments. Polynomial commitment schemes are going to lay the ground for Ethereum's data availability in the future. Hence, one of our research task is to investigate novel polynomial commitment schemes that are better than Kate et al commitment scheme in terms of security and efficiency.
  • Towards more fair MEV. On of the potential security measure one can take to mitigate malicious MEV extraction attacks is by obfuscating submitted transactions. In this project, we investigate use of privacy preserving tools to assure more fair MEV.
Our team is looking for two kinds of people:
  • Cryptography enthusiasts who would enjoy analysing, breaking and designing cryptographic schemes.
  • Engineers with some background in cryptography who enjoy making proof of concepts of novel cryptographic protocols, extending cryptographic libraries, and finding vulnerabilities in existing implementations.
Skills that you will use and learn at the Nineveh research team include but not limited to:
  • basic algebra
  • cryptography - provable security, cryptographic protocols (esp. zero-knowledge ones)
  • MEV
  • distributed systems
  • C++ / Rust / Python

Here's what some of our current interns have to say:

"I'm super excited with this opportunity to take part in such an important project and to work with a team of really talented people. Not only it gives me a chance to learn a lot but also, I'll be able to help in solving real world problems" Carmen Irene Cabrera Rodríguez, Cairo and Layer 2 Research Intern, Nubia team

"The Nethermind internship is like selling your soul to the devil. You don't know what you're getting yourself into at first, but by doing it you get some pretty rad powers with which to flex on mere mortals" Kristof Gazso, Ethereum and MEV Research Intern, MEV and Ethereum 1 team

"Working at Nethermind is nothing short of a journey, every day is a new challenge to learn and grow. The projects are incredibly exciting, and the dedication and grit of the team is unstoppable" Guilherme Heise, Blockchain Data Engineering Intern, Data team

"I recently started an internship at Nethermind, and I can say that, it is one of the best professional experiences I have ever had. Wonderful co-workers, projects on blockchain, DeFi, Ethereum and much more. Definitely a great place to grow, both professionally and personally" Marcos Maceo, Blockchain Engineering Intern

"If you are interested in blockchain, this is a great opportunity. Nethermind is an excellent place to be an intern. There are a lot of interesting projects and everyone want to help you. The best place to learn." Mauricio Perdomo Cortés, Blockchain Engineering Intern, Venice team

Join us!

We are always on the lookout for talent!

If what we do excites you, but none of the current open positions match your background, we encourage you to send us your CV at [email protected]

Join our growing and active community of 2000+ developers on our Discord server: https://discord.com/invite/PaCMRFdvWT


In the meantime, keep up to date on what we are working on by following us on our social channels:
https://twitter.com/nethermindeth
https://www.linkedin.com/company/nethermind/

Click here to view our Privacy Policy.